GtkStyleContext: Add methods to query composed style.
authorCarlos Garnacho <carlosg@gnome.org>
Sun, 7 Mar 2010 00:22:38 +0000 (01:22 +0100)
committerCarlos Garnacho <carlosg@gnome.org>
Sat, 4 Dec 2010 14:36:49 +0000 (15:36 +0100)
gtk/gtkstylecontext.c
gtk/gtkstylecontext.h

index 0a84cda5639a4292270435e65eece5afa0cb2388..b5c1f075d55385f8443dda88a3f72d167048bcd5 100644 (file)
@@ -221,5 +221,54 @@ gtk_style_context_remove_provider (GtkStyleContext  *context,
     rebuild_properties (context);
 }
 
+void
+gtk_style_context_get_property (GtkStyleContext *context,
+                                const gchar     *property,
+                                GtkStateType     state,
+                                GValue          *value)
+{
+  GtkStyleContextPrivate *priv;
+
+  g_return_if_fail (GTK_IS_STYLE_CONTEXT (context));
+  g_return_if_fail (property != NULL);
+  g_return_if_fail (state < GTK_STATE_LAST);
+  g_return_if_fail (value != NULL);
+
+  priv = GTK_STYLE_CONTEXT_GET_PRIVATE (context);
+  gtk_style_set_get_property (priv->store, property, state, value);
+}
+
+void
+gtk_style_context_get_valist (GtkStyleContext *context,
+                              GtkStateType     state,
+                              va_list          args)
+{
+  GtkStyleContextPrivate *priv;
+
+  g_return_if_fail (GTK_IS_STYLE_CONTEXT (context));
+  g_return_if_fail (state < GTK_STATE_LAST);
+
+  priv = GTK_STYLE_CONTEXT_GET_PRIVATE (context);
+  gtk_style_set_get_valist (priv->store, state, args);
+}
+
+void
+gtk_style_context_get (GtkStyleContext *context,
+                       GtkStateType     state,
+                       ...)
+{
+  GtkStyleContextPrivate *priv;
+  va_list args;
+
+  g_return_if_fail (GTK_IS_STYLE_CONTEXT (context));
+  g_return_if_fail (state < GTK_STATE_LAST);
+
+  priv = GTK_STYLE_CONTEXT_GET_PRIVATE (context);
+
+  va_start (args, state);
+  gtk_style_context_get_valist (priv->store, state, args);
+  va_end (args);
+}
+
 #define __GTK_STYLE_CONTEXT_C__
 #include "gtkaliasdef.c"
index 1ded64e6eef93b13a7828a09b59507612e2604d8..37d4f15e4ff88d56c375d257f431977fa24d1b38 100644 (file)
@@ -54,6 +54,17 @@ void gtk_style_context_add_provider    (GtkStyleContext  *context,
 void gtk_style_context_remove_provider (GtkStyleContext  *context,
                                         GtkStyleProvider *provider);
 
+void gtk_style_context_get_property (GtkStyleContext *context,
+                                     const gchar     *property,
+                                     GtkStateType     state,
+                                     GValue          *value);
+void gtk_style_context_get_valist   (GtkStyleContext *context,
+                                     GtkStateType     state,
+                                     va_list          args);
+void gtk_style_context_get          (GtkStyleContext *context,
+                                     GtkStateType     state,
+                                     ...) G_GNUC_NULL_TERMINATED;
+
 G_END_DECLS
 
 #endif /* __GTK_STYLE_CONTEXT_H__ */